Que son los projects de Rstudio?

  • Una manera de organizar tu workflow.
  • Están automáticamente asociados con el working directory
  • AsĂ­ que podemos dejar setwd() descansar en paz y evitar problemas de archivos que no están en su sitio.

El tweet y el post que me convirtieron a este método.

Estructura

Cada proyecto tiene su propio:

  • directory
  • workspace
  • history
  • source documents

Video de como crear RStudio Projects.

Ventajas

  • Los análisis de diferentes proyectos se mantienen completamente separados.
  • Puedes tener abiertas varias sesiones de R a la vez sin que interfieran entre ellos.
  • El uso de relatives paths (./) automáticos.
  • Las direcciones de los archivos se vuelven relativas en vez de absolutas facilitando trabajar en un proyecto desde varios ordenadores.

Como crear un Project nuevo

Imagen de @Allison Horst

ÂżQue es RMarkdown?

Funciona en dos partes:

  • knit
    • Ejecuta el cĂłdigo dentro del documento.
    • Utiliza el paquete knitr
    • El output del cĂłdigo se vera justo debajo del cĂłdigo que lo ha producido.
    • Significa que cuando cambias los datos de origen de la gráficas, estas se actualizan automáticamente.

Funciona en dos partes:

  • convert
    • Puedes convertir tu archivo a muchos formatos diferentes fácilmente.
    • Rmardown utiliza el programa pandoc (esta automáticamente dentro de la instalaciĂłn de rmarkdown).
    • Significa que puedes compartir tu documento en una variedad de formatos isn tener que cambiar el original.

Source

Instalacion

# install the rmarkdown package from CRAN in R
install.packages("rmarkdown")
  • Para documentos de PDF necesitas LaTeX. La version de R es TinyTeX
tinytex::install_tinytex()
# to uninstall TinyTeX, run
# tinytex::uninstall_tinytex()

Aquí puedes ver los detalles técnicos de TinyTeX y aquí los FAQ.

ÂżComo funciona?

Anatomia de RMarkdown

  • YAML Header
---
title: "RProjects y RMarkdown"
author: Alejandra G.Cabanillas 
output: html_document
---
  • Va al principio del documento.
  • Lo lee Pandoc, rmarkdown y knitr.
  • Describe que tipo de documento estas generando y es donde se realizan las modificacion de formato y typesetting.

Para mas informaciĂłn ver este video, este mini-curso o esta secciĂłn

Ventajas

  • Al integrar la creaciĂłn de figuras con el análisis de datos puedes actualizar documentos de manera casi automática.
  • Facilita modificar figuras durante el proceso de ediciĂłn.
  • Ahorra tiempo al hacer editar el formato deseado automáticamente (evita mover todo de sitio cuando cambias una imagen)

Integracion con Rstudio Projects

  • Lo Ăşnico que debes hacer es guardar tu documento de markdown (.Rmd) en el directorio de el Project
  • Cualquier imagen o datos que vayan a ser utilizados en el documento tambiĂ©n deben estar en el mismo directorio.

Ejemplo de organizacion en un Project

Differencias entre un Script y un documento de Markdown

  • En un script todo es cĂłdigo que va a ser ejecutado (menos los comentarios)
  • En R Markdown solo los chunks son ejecutables.
  • Un archivo de R Markdown es básicamente texto con secciones ejecutables.
  • Piensa en ello como un procesador de texto muy flexible con R integrado.

Integrando codigo de R en tu documento

  • Crean nuestros reportes dinámicos y mantienen el documento sincronizado.
  • Funciona asĂ­:

Como inlcuir tu codigo:

  • Chunk:
x <- 5  # radius of a circle
  • In-line

Para un circulo con radio 5, su área es 78.5398163.

  • En la linea anterior los valores han sido calculados directamente desde las variables asignadas. En el documento se ve asĂ­ :
Para un circulo con radio `r x`, su área es `r pi * x^2`

Opciones disponibles

  • include = FALSE Ejecuta el cĂłdigo pero no lo enseña en el documento. R Markdown puede utilizar ese output en el resto del documento.
  • echo = FALSE Evita que el cĂłdigo se ejecute. Pero enseña los resultados. Es una manera muy practica de incluir gráficos.
  • message = FALSE Evita que los mensajes producidos por el cĂłdigo se muestren en el documento. Por ejemplo cuando instalamos paquetes o una gráfica no esta del todo ajustada.
  • warning = FALSE Evita que se muestren los mensajes de error en el documento final. Es muy completamente cuando solo quieres enseñar un trozo de cĂłdigo complejo y no ejecutarlo completamente.

Hay mas de 50 opciones que pueden modificar los chunks dependiendo de tus necesidades.

Lista completa

Integrando imagenes

Generando figuras

  • Escribe el cĂłdigo necesario para generala dentro de un chunk
  • Utiliza las opciones de los chunks para modificar el tamaño y agregar leyendas.

Aqui para un ejemplo en detalle, también esta en mas detalle en el seminario 2.

Añadir una leyenda

  • Simplemente vamos a agregar fig.cap = “tu leyenda” en las opciones del chunk
plot(mpg ~ hp, mtcars)
Un ejemplo en R base

Un ejemplo en R base

Añadir una imagen ya guardada

  • Especifica donde esta.
  • Que formato es.
  • El tamaño deseado.
  • TambiĂ©n puedes utilizar fig.cap
``{r,  echo = FALSE, out.width="100%"} 
knitr::include_graphics("./images/chunks.png")
``

Programmatic reporting

  • Cuando todo lo anterior es aplicado dentro de un documento tenemos lo que se conoce como Programmatic reporting.
  • Un documento que se actualiza fácilmente cuando cambian los datos que se han utilizado para generarlo.

Todo lo que ya habeis aprendido en version CV

  • Programming Language: R
  • Exploratory Data Analysis tools: tidyverse
  • Dataviz tools: ggplot2
  • Programmatic reporting: RMarkdown

Source

Referencias